//基于axios封装的请求模块
//创建一个axios实力，说白了就是复制一个axios
//我们通过这个实力去发请求，把需要的配置给这个实力来
import axios from "axios";
const request = axios.create({
    baseURL: 'http://ttapi.research.itcast.cn/'//请求的基础
})
//请求拦截器
request.interceptors.request.use(
    //任何所有请求会经过这里
    //config是当前请求相关的配置信息对象

    function(config){
        const user=JSON.parse(window.localStorage.getItem("user"))
        //如果有用户信息，则统一设置token
        if(user){
config.headers.Authorization=`Bearer ${user.token}`
        }
        //然后我们就可以在允许请求出去之前制定统一的业务功能处理
        //列如统一的设置token
         
        //当这里return config 之后请求会在真正的发出去的
        return config
    },
    //请求失败会进入这个
    function(){
        return Promise.reject(error)
    }
)
export default request